package com.zhuoyue.common.dto;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

/**
 * @author wjming
 * @ClassName: BatchResultDTO
 * @Description: 批量结果集封装
 * @Date 2021-07-14 19:33
 */
public class BatchResultDTO<T> extends BaseResultDTO {

    /**
     *
     */
    private static final long serialVersionUID = 5869367606953319679L;
    /**
     * 失败列表
     */
    private Map<Long, String> faileds = new HashMap<>();
    private List<T> module;

    public List<T> getModule() {
        return module;
    }

    public void setModule(List<T> module) {
        this.module = module;
    }

    /**
     * 添加操作失败记录到失败列表
     *
     * @param id
     * @param errorCode
     */
    public void addFailed(Long id, String errorCode) {
        setResultCode(errorCode);
        faileds.put(id, errorCode);
    }

    /**
     * 获取操作失败记录以及对应失败的原因
     *
     * @return
     */
    public Map<Long, String> getFaileds() {
        return faileds;
    }

    @Override
    public String toString() {
        return "BatchResultDTO{" +
                "faileds=" + faileds +
                ", module=" + module +
                '}';
    }
}
